/**
 * @file main.c
 * @brief 外部中断控制LED亮灭（基于STM32的v3.5库）
 * @author 王晓荣
 * @version 
 * @date 2014-03-22
 */

#include "led.h" 
#include "exti.h" 

static void led_disp(void);

/**
 * @brief 主程序
 *
 * @return 
 */
int main(void)
{
    /** 设置4个抢占式优先级（7:1个；6:2个；5:4个；4:8个；0-3:16个） */
	NVIC_SetPriorityGrouping(5);
    
    led_config();   
    exti_config(); 	
    
    while(1)
    {
        led_disp();
    }        
}

static void led_disp(void)
{
    static u8 led0_flg = 1;	
    static u8 led1_flg = 1;
    
    if(read_exti0_flg())
    {
        clr_exti0_flg();
        
        if(led0_flg)
        {
            led0_flg = 0;
            led_on(0);
        }
        else
        {
            led0_flg = 1;
            led_off(0);
        }
    } 
    
    if(read_exti13_flg())
    {
        clr_exti13_flg();
        
        if(led1_flg)
        {
            led1_flg = 0;
            led_on(1);
        }
        else
        {
            led1_flg = 1;
            led_off(1);
        }
    }     
}



